package com.ruoyi.gybj.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 报警变更申请对象 gybj_change_apply
 * 
 * @author ruoyi
 * @date 2025-11-19
 */
public class ChangeApply extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键id */
    private Long id;

    /** 变更单号 */
    @Excel(name = "变更单号")
    private String changeNo;

    /** 申请人id */
    @Excel(name = "申请人id")
    private Long appplyUserId;

    /** 申请人姓名 */
    @Excel(name = "申请人姓名")
    private String applyUserName;

    /** 申请时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "申请时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date applyTime;

    /** 点位id */
    @Excel(name = "点位id")
    private Long pointId;

    /** 变更类型: 阈值、死区、搁置、抑制 */
    @Excel(name = "变更类型: 阈值、死区、搁置、抑制")
    private String changeType;

    /** 变更原因 */
    @Excel(name = "变更原因")
    private String changeReason;

    /** 审核状态: 0待审核、1审核中、2通过、3驳回;   搁置直接通过，不需要审核 */
    @Excel(name = "审核状态: 0待审核、1审核中、2通过、3驳回;   搁置直接通过，不需要审核")
    private String approvalStatus;

    /** 计划变更时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "计划变更时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date planChangeTime;

    /** 工艺危害分析 */
    @Excel(name = "工艺危害分析")
    private String hazardAnalysis;

    /** 管控措施 */
    @Excel(name = "管控措施")
    private String controlMeasure;

    /** 附件ID */
    @Excel(name = "附件ID")
    private Long attachmentId;

    /** 附加名称 */
    @Excel(name = "附加名称")
    private String attachmentName;

    /** 附件URL */
    @Excel(name = "附件URL")
    private String attachmentUrl;

    /** 状态:1正常 0关闭 */
    @Excel(name = "状态:1正常 0关闭")
    private String status;

    /** 删除标志（0代表存在 1代表删除） */
    private String delFlag;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setChangeNo(String changeNo) 
    {
        this.changeNo = changeNo;
    }

    public String getChangeNo() 
    {
        return changeNo;
    }

    public void setAppplyUserId(Long appplyUserId) 
    {
        this.appplyUserId = appplyUserId;
    }

    public Long getAppplyUserId() 
    {
        return appplyUserId;
    }

    public void setApplyUserName(String applyUserName) 
    {
        this.applyUserName = applyUserName;
    }

    public String getApplyUserName() 
    {
        return applyUserName;
    }

    public void setApplyTime(Date applyTime) 
    {
        this.applyTime = applyTime;
    }

    public Date getApplyTime() 
    {
        return applyTime;
    }

    public void setPointId(Long pointId) 
    {
        this.pointId = pointId;
    }

    public Long getPointId() 
    {
        return pointId;
    }

    public void setChangeType(String changeType) 
    {
        this.changeType = changeType;
    }

    public String getChangeType() 
    {
        return changeType;
    }

    public void setChangeReason(String changeReason) 
    {
        this.changeReason = changeReason;
    }

    public String getChangeReason() 
    {
        return changeReason;
    }

    public void setApprovalStatus(String approvalStatus) 
    {
        this.approvalStatus = approvalStatus;
    }

    public String getApprovalStatus() 
    {
        return approvalStatus;
    }

    public void setPlanChangeTime(Date planChangeTime) 
    {
        this.planChangeTime = planChangeTime;
    }

    public Date getPlanChangeTime() 
    {
        return planChangeTime;
    }

    public void setHazardAnalysis(String hazardAnalysis) 
    {
        this.hazardAnalysis = hazardAnalysis;
    }

    public String getHazardAnalysis() 
    {
        return hazardAnalysis;
    }

    public void setControlMeasure(String controlMeasure) 
    {
        this.controlMeasure = controlMeasure;
    }

    public String getControlMeasure() 
    {
        return controlMeasure;
    }

    public void setAttachmentId(Long attachmentId) 
    {
        this.attachmentId = attachmentId;
    }

    public Long getAttachmentId() 
    {
        return attachmentId;
    }

    public void setAttachmentName(String attachmentName) 
    {
        this.attachmentName = attachmentName;
    }

    public String getAttachmentName() 
    {
        return attachmentName;
    }

    public void setAttachmentUrl(String attachmentUrl) 
    {
        this.attachmentUrl = attachmentUrl;
    }

    public String getAttachmentUrl() 
    {
        return attachmentUrl;
    }

    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("changeNo", getChangeNo())
            .append("appplyUserId", getAppplyUserId())
            .append("applyUserName", getApplyUserName())
            .append("applyTime", getApplyTime())
            .append("pointId", getPointId())
            .append("changeType", getChangeType())
            .append("changeReason", getChangeReason())
            .append("approvalStatus", getApprovalStatus())
            .append("planChangeTime", getPlanChangeTime())
            .append("hazardAnalysis", getHazardAnalysis())
            .append("controlMeasure", getControlMeasure())
            .append("attachmentId", getAttachmentId())
            .append("attachmentName", getAttachmentName())
            .append("attachmentUrl", getAttachmentUrl())
            .append("status", getStatus())
            .append("delFlag", getDelFlag())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
